如何使用树莓派的GPIO引脚创建开关电路 | 您所在的位置:网站首页 › 树莓派 gpio 编程 › 如何使用树莓派的GPIO引脚创建开关电路 |
步骤1:您需要做什么
-已安装Raspbian的 RaspberryPi 。您还需要能够使用监视器,鼠标和键盘或通过远程桌面访问树莓派。您可以使用任何型号的Raspberry Pi。如果您使用的是Pi Zero模型之一,则可能需要将一些接头引脚焊接到GPIO端口。 -红色LED -3 x触动按钮开关 -无焊原型电路板 -4 x 330欧姆电阻器 -3 x 1 Kohm电阻器 -某些公对母跳线 第2步:构建电路
在面包板上构建上述电路,确保没有 如果仔细观察一下LED,就会发现在彩色外壳内有两小块金属。这些被称为阳极和阴极。阴极是两者中最大的阴极,也连接到LED的负极引线。 确保正确连接交换机。如果仔细看一下交换机,您会发现交换机的任一侧都安装了两个支脚。当开关处于打开位置(即未按下)时,两侧之间的电路将断开。当开关处于关闭位置(即按下)时,两侧之间的电路将完成。 检查完电路后,请按照上图连接Raspberry Pi的GPIO引脚的跨接电缆。 第3步:创建一个Python脚本来响应按钮的按下
打开 IDLE 您的Raspberry Pi(菜单》编程》 Python 2(IDLE))。 现在打开一个新项目(文件》新建文件)并键入以下内容: import RPi.GPIO as GPIO import time SwitchA=17 SwitchB=18 SwitchC=27 LED=22 GPIO.setmode(GPIO.BCM) GPIO.setup(SwitchA, GPIO.IN) GPIO.setup(SwitchB, GPIO.IN) GPIO.setup(SwitchC, GPIO.IN) GPIO.setup(LED, GPIO.OUT) while True: if GPIO.input(SwitchA)==True: print(“You are pressing button A”) if GPIO.input(SwitchB)==True: print(“You are pressing button B”) GPIO.output(LED, True) if GPIO.input(SwitchC)==True: print(“You are pressing button C”) GPIO.output(LED, False) 在Raspberry Pi的“文档”文件夹中将项目另存为 buttons.py (文件》另存为)。 在Raspberry Pi上,打开“终端”(菜单》附件》终端),然后导航至通过键入以下内容来打开“文档”文件夹: cd /home/pi/Documents 现在,您可以通过键入以下内容来运行新脚本: python buttons.py 当您按下第一个按钮,消息“您正在按按钮A”将在屏幕上重复显示,直到您停止按按钮为止。 当您按下第二个按钮时,类似的消息也会出现在屏幕上,并且LED也会亮起。 当您按下第三个按钮时,将出现类似的消息,并且LED会熄灭。 您可以通过按CTRL + Z停止运行该程序。 脚本的工作方式 第11-13行使用 GPIO.setup 将GPIO引脚设置为输入引脚。命令: GPIO.setup(SwitchA, GPIO.IN) 然后脚本使用 GPIO.input 命令来检测引脚为True(即,连接+ 3.3v电源时)还是False。 (即,当引脚接地时): if GPIO.input(SwitchA)==True: 为确保Raspberry Pi不断检查引脚的状态,脚本还使用了 While循环重复运行脚本的同一部分: while True: while 命令通常后跟一个条件(例如x == 1)和一个冒号( “”)。该命令之后的任何缩进代码都将重复执行,直到不再满足该条件为止。但是,在上面的脚本中,我们只写了 True 而不是条件。这将确保脚本可以连续运行,直到按下CTRL + Z或Raspberry Pi掉电为止。 通过将第17行更改为包含以下条件语句,该脚本将在按下第三个按钮时停止循环: while GPIO.input(SwitchC)==False: |
CopyRight 2018-2019 实验室设备网 版权所有 |